package com.ep.modules.app.controller;

import com.ep.common.annotation.SysLog;
import com.ep.common.utils.PageUtils;
import com.ep.common.utils.R;
import com.ep.common.validator.ValidatorUtils;
import com.ep.modules.app.entity.AppBenefit;
import com.ep.modules.app.service.AppBenefitService;
import java.util.Map;
import org.springframework.beans.factory.annotation.*;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/app/benefit")
public class AppBenefitController {
    @Autowired
    private AppBenefitService appBenefitService;

    @GetMapping("/list")
    public R list(Map<String, Object> params) {
        PageUtils page = appBenefitService.queryPage(params);
        return R.ok().put("page", page);
    }

    @GetMapping("/info/{id}")
    public R info(@PathVariable Long id) {
        AppBenefit appbenefit = appBenefitService.getById(id);
        return R.ok().put("appbenefit", appbenefit);
    }

    @SysLog("保存AppBenefit")
    @PostMapping("/save")
    public R save(@RequestBody AppBenefit appbenefit) {
        ValidatorUtils.validateEntity(appbenefit);
        appBenefitService.save(appbenefit);
        return R.ok();
    }

    @SysLog("修改AppBenefit")
    @PostMapping("/update")
    public R update(@RequestBody AppBenefit appbenefit) {
        ValidatorUtils.validateEntity(appbenefit);
        appBenefitService.update(appbenefit);
        return R.ok();
    }

    @SysLog("删除AppBenefit")
    @PostMapping("/delete")
    public R delete(@RequestBody Long[] ids) {
        appBenefitService.deleteBatch(ids);
        return R.ok();
    }
}